{
 "cells": [
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "# SciPy"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "## numpy中的数组"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "Scipy是在Numpy的基础上增加了众多的数学计算、科学计算以及工程计算常用的模块。例如线性代数、常微分方程的数值求解、信号处理、图像处理等\n"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "### 将Python中的数组转化为NumPy中的数组"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 2,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "<class 'numpy.ndarray'>\n",
      "<class 'list'>\n",
      "[1 6 3 5]\n"
     ]
    }
   ],
   "source": [
    "import numpy as np\n",
    "list=[1,6,3,5]#定义了一个名为list的Python列表，包含了四个整数 [1, 6, 3, 5]\n",
    "arr=np.array(list)#np.array()函数将Python列表转换为NumPy数组，并将结果存储在变量arr中\n",
    "print(type(arr)) #输出arr的类型\n",
    "print(type(list))#输出list的类\n",
    "print(arr)#NumPy 数组中的元素在方括号 [] 内用空格分隔，而不是逗号。"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "### 创建NumPy数组"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 4,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "[0. 0. 0.]\n",
      "[1. 1. 1.]\n",
      "[0 1 2]\n",
      "int32\n",
      "[1.         1.33333333 1.66666667 2.        ]\n"
     ]
    }
   ],
   "source": [
    "print(np.zeros(3))#三个元素为０的数组\n",
    "print(np.ones(3))#三个元素为１的数组\n",
    "#numpy.arange([start], stop[, step], dtype=None)，start可选默认0，必须，可选默认1，可选，可自动推断\n",
    "print(np.arange(3))#三个元素为从０开始逐渐增加１的数组　\n",
    "print(np.arange(3).dtype)#显示numpy数组中元素的数据类型，（在64位系统上）\n",
    "#numpy.linspace(start, stop, num=50, endpoint=True, retstep=False, dtype=None)\n",
    "print(np.linspace(1., 2., 4)) #创建一个数组，元素范围从1到2，被均匀分为3个\n",
    "#np.arange() 是基于步长来生成数值，而 np.linspace() 是基于数量来生成数值。"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "### 创建NumPy矩阵"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 5,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "[[1 2]\n",
      " [3 4]]\n",
      "[[1 3]\n",
      " [2 4]]\n",
      "[[1 3]\n",
      " [2 4]]\n",
      "[[1. 0. 0. 0. 0.]\n",
      " [0. 1. 0. 0. 0.]\n",
      " [0. 0. 1. 0. 0.]\n",
      " [0. 0. 0. 1. 0.]\n",
      " [0. 0. 0. 0. 1.]]\n",
      "[[-2.   1. ]\n",
      " [ 1.5 -0.5]]\n"
     ]
    }
   ],
   "source": [
    "mat = np.matrix('1 2; 3 4')# ２＊２的矩阵 \n",
    "print(mat)\n",
    "print(mat.T) # 矩阵的转置\n",
    "print(mat.H) # 矩阵的共轭转置(复数的实部不变，虚部变负)\n",
    "\n",
    "import numpy.matlib\n",
    "print(np.matlib.identity(5)) #创建单位矩阵，创建一个 5x5 的单位矩阵，单位矩阵是对角线为1，其余元素为0的矩阵。\n",
    "print(mat.I) #矩阵的逆矩阵\n"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "## SciPy中的算法"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "### 积分 integrate.quad"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 6,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<Figure size 432x288 with 1 Axes>"
      ]
     },
     "metadata": {
      "needs_background": "light"
     },
     "output_type": "display_data"
    },
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<Figure size 432x288 with 1 Axes>"
      ]
     },
     "metadata": {
      "needs_background": "light"
     },
     "output_type": "display_data"
    }
   ],
   "source": [
    "#它定义了一个函数并使用一个 Lambda 表达式来计算该函数的值，然后绘制两个图像\n",
    "def x2(x):\n",
    "    return(x**2+1)#定义函数 x2\n",
    "\n",
    "c=lambda x: x**2+1#Lambda 表达式定义了一个匿名函数 c，lambda 表达式通常用于简单的函数定义，特别是在需要传递函数作为参数时。\n",
    "\n",
    "import matplotlib.pyplot as plt\n",
    "#np.arange() 函数在生成数值时是左闭右开的区间。这意味着生成的数组包含起始值，但不包括结束值。\n",
    "x = np.arange(-10, 10, 0.1)#np.arange() 创建一个从 -10 到 10（不包括 10），步长为 0.1 的数组\n",
    "\n",
    "# 画出函数曲线\n",
    "plt.plot(x, x2(x))\n",
    "plt.show()\n",
    "plt.plot(x, c(x))\n",
    "# plt.savefig('./opt2-1.png') # 保存要显示的图片\n",
    "plt.show()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 7,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "(15.886226925451396, 1.763725490705625e-13)\n"
     ]
    }
   ],
   "source": [
    "#展示了如何使用 scipy.integrate 模块中的 quad 函数进行数值积分\n",
    "import scipy.integrate\n",
    "f = lambda x, a ,b:a+np.exp(-x**2)*b\n",
    "#scipy.integrate.quad 用于计算给定函数的定积分。被积函数，积分上下限\n",
    "#args=(3, 1) 将额外的参数 a=3 和 b=1 传递给 Lambda 函数 f\n",
    "i = scipy.integrate.quad(f,0,5,args=(3,1))\n",
    "print(i)# 第一项输出为积分值，第二项为误差"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 8,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "(2.0, 2.220446049250313e-14)\n"
     ]
    }
   ],
   "source": [
    "def f(x, a, b):\n",
    "    return(a*(x**2)+b)\n",
    "inte = scipy.integrate.quad(f,0,1, args=(3,1))\n",
    "print(inte)"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "### 多重积分 integrate.dblquad()"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "积分\n",
    "$$\\int_{0}^{0.5}dx \\int_{0}^{\\sqrt{1-4y^2}} 19xy~dy$$"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 11,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "(0.59375, 2.029716563995638e-14)\n"
     ]
    }
   ],
   "source": [
    "#scipy.integrate.dblquad 函数来计算一个二重积分\n",
    "from math import sqrt\n",
    "f = lambda x, y : 19*x*y\n",
    "g = lambda x : 0\n",
    "h = lambda y : sqrt(1-4*y**2)\n",
    "#x的上下限，y的上下限\n",
    "i = scipy.integrate.dblquad(f, 0, 0.5, g, h)\n",
    "print (i)\n"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "### 导数"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 13,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "8.0"
      ]
     },
     "execution_count": 13,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "from scipy.misc import derivative\n",
    "def x2(x):\n",
    "    return(x**2)\n",
    "#derivative(x2,4,1)#第一个参数是被积函数，第二个参数是计算导数的点x=4，dx参数指定了用于计算导数的微小增量，通常使用很小的值\n",
    "#x2(5)−x2(3)/2\n",
    "derivative(x2,4)"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "### 微分方程"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "使用scipy中的相关函数 odeint 函数求解。ordinary differential equation integrate\n",
    "\n",
    "odeint(f,y0,tvals)\n",
    "\n",
    "f为要求解的函数， y0为初始值， tvals为自变量的范围中的每一个点的值,(初始到结束时的值)"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "求解一阶导 \n",
    "\n",
    "$$\\frac{dy}{dt}=y(t), \\quad y(t_0)=1$$"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 9,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "array([[1.        ],\n",
       "       [1.64872127],\n",
       "       [2.71828191]])"
      ]
     },
     "execution_count": 9,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "#scipy.integrate 的 odeint 函数来求解一个简单的常微分方程\n",
    "import scipy.integrate # 不能只调用 scipy 然后在程序中使用 scipy.integrate\n",
    "import matplotlib.pyplot as plt\n",
    "import numpy as np\n",
    "#(y,t)=y，无论t取什么值，f都只依赖于y，通常用来描述导数\n",
    "f=lambda y, t:y\n",
    "#这里调用obdint函数时需要完整使用scipy.integrate \n",
    "#第一个参数 f 是微分方程。第二个参数 1 是初始条件 y(0)=1,第三个参数 [0, 0.5, 1] 是求解的时间点\n",
    "scipy.integrate.odeint(f, 1, [0,0.5,1]) #解为 e 指数.\n",
    "#解为一个数组，第一个相当于初始值 y(t=0)， 第二个是解 y(t=0.5) ... \n"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "另一个例子：\n",
    "\n",
    "$\\frac{dy}{dx}=x$ 的解"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 15,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "[[0.        ]\n",
      " [0.00510152]\n",
      " [0.02040608]\n",
      " [0.04591368]\n",
      " [0.08162432]]\n"
     ]
    },
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<Figure size 432x288 with 1 Axes>"
      ]
     },
     "metadata": {
      "needs_background": "light"
     },
     "output_type": "display_data"
    }
   ],
   "source": [
    "import numpy as np  #numpy 是一个Python库，提供了对数组和矩阵操作的支持。\n",
    "import matplotlib.pyplot as plt #matplotlib.pyplot 是用于绘制图形的函数集合\n",
    "from scipy.integrate import odeint  #是一个用于数值积分的函数，用来求解常微分方程组\n",
    "\n",
    "def diff(y, x):\n",
    "\treturn np.array(x)#返回的x是一个数组\n",
    "\n",
    "\n",
    "\t# 上面定义的函数在odeint里面体现的就是dy/dx = x\n",
    "    \n",
    "x = np.linspace(0, 10, 100)  # 给出x范围  创建了一个包含 100 个点的数组，范围从 0 到 10\n",
    "#deint 函数来求解常微分方程。它接受三个参数定义的常微分方程函数,0 是初始条件 y(0) 的值x 是求解的点\n",
    "y = odeint(diff, 0, x)  # 设初值为0 此时y为一个数组，元素为不同x对应的y值\n",
    "#odeint(diff, 0, x) 返回一个二维数组 ,y[:, 0] 对应 y1(x),y[:, 1] 对应 y2(x)。\n",
    "\n",
    "print(y[:5])  # 打印前5行\n",
    "\n",
    "\n",
    "plt.plot(x, y[:, 0])  # y数组（矩阵）的第一列，（因为维度相同，plt.plot(x, y)效果相同）\n",
    "plt.grid()\n",
    "plt.show()  "
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 14,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "y的形状： (100, 2)\n",
      "前5行数据：\n",
      " [[0.         1.        ]\n",
      " [0.10083841 0.99490282]\n",
      " [0.20064884 0.97966323]\n",
      " [0.29841379 0.95443659]\n",
      " [0.3931366  0.91948007]]\n"
     ]
    },
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<Figure size 432x288 with 1 Axes>"
      ]
     },
     "metadata": {
      "needs_background": "light"
     },
     "output_type": "display_data"
    }
   ],
   "source": [
    "import numpy as np\n",
    "import matplotlib.pyplot as plt\n",
    "from scipy.integrate import odeint\n",
    "\n",
    "# 定义微分方程\n",
    "def diff(y, x):#其中 y 应该是一个数组（或列表），包含至少两个元素\n",
    "    y1, y2 = y#y 数组的第一个元素解包到 y1，第二个元素解包到 y2\n",
    "    dy1_dx = y2\n",
    "    dy2_dx = -y1\n",
    "    return [dy1_dx, dy2_dx]#函数返回一个列表，包含 𝑦1和 𝑦2 的导数。\n",
    "\n",
    "# 定义x的范围\n",
    "x = np.linspace(0, 10, 100)\n",
    "\n",
    "# y1(0) = 0 和 y2(0) = 1\n",
    "initial_conditions = [0, 1]\n",
    "\n",
    "# 使用odeint求解\n",
    "y = odeint(diff, initial_conditions, x)#每个结果包含 y1(x) 和 y2(x) 两个值。\n",
    "\n",
    "# 打印y的形状和前几行数据\n",
    "print(\"y的形状：\", y.shape)#表示 100 个 x 值的结果，每个结果包含 y1(x) 和 y2(x) 两个值\n",
    "print(\"前5行数据：\\n\", y[:5])\n",
    "\n",
    "# 绘制y1和y2的图像\n",
    "plt.plot(x, y[:, 0], label='y1(x)')\n",
    "plt.plot(x, y[:, 1], label='y2(x)')\n",
    "plt.legend()\n",
    "plt.grid()\n",
    "plt.show()\n"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "odeint()函数中第一个变量微分方程的函数中可以定义不止一个一阶微分方程,定义多个一阶微分方程就可以解高阶方程，下面是一个解单摆的例子：\n",
    "\n",
    "$\\frac{d^2\\theta}{dt^2}=-\\frac{g}{l}\\theta$\n",
    "\n",
    "将其转化为两个一阶微分方程\n",
    "\n",
    " $\\frac{d\\omega}{dt}=-\\frac{g}{l}\\theta$， $\\frac{d\\theta}{dt}=\\omega$"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 11,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<Figure size 432x288 with 1 Axes>"
      ]
     },
     "metadata": {
      "needs_background": "light"
     },
     "output_type": "display_data"
    }
   ],
   "source": [
    "# 求解程序\n",
    "g = 9.8\n",
    "l = 1\n",
    "# 定义一个ode可以使用的二阶微分方程\n",
    "def diff2(d_list, t):#diff2 函数定义了一个二阶微分方程。d_list 是一个包含两个变量的列表或数组，omega 是角速度，theta 是角度\n",
    "\tomega, theta = d_list\n",
    "    # 两个返回值， 每一个对应方程右侧的值\n",
    "\treturn np.array([-g/l*theta, omega])#返回的数组包含两个元素\n",
    "\n",
    "\n",
    "t = np.linspace(0, 20, 2000)\n",
    "# 因为是两阶， 所以初始值也为两个\n",
    "\n",
    "result = odeint(diff2, [0, 35/180*np.pi], t)#ω(0),θ(0）=35 初始角度为 35 度，换算为弧度\n",
    "# 结果是一个两列的矩阵， odeint中第二个是初始单摆角度35度\n",
    "plt.plot(t, result[:, 0])  # 输出omega随时变化曲线\n",
    "plt.plot(t, result[:, 1])  # 输出theta随时变化曲线，即方程解\n",
    "plt.show()\n",
    "\n"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 16,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "时间 (s)\t角速度 ω (rad/s)\t角度 θ (rad)\n",
      "0.00\t\t0.0000\t\t0.6109\n",
      "2.00\t\t0.0365\t\t0.6108\n",
      "4.00\t\t0.0729\t\t0.6104\n",
      "6.00\t\t0.1093\t\t0.6099\n",
      "8.00\t\t0.1457\t\t0.6091\n",
      "10.01\t\t0.1820\t\t0.6081\n",
      "12.01\t\t0.2182\t\t0.6069\n",
      "14.01\t\t0.2544\t\t0.6054\n",
      "16.01\t\t0.2905\t\t0.6038\n",
      "18.01\t\t0.3265\t\t0.6019\n"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "D:\\1.Notepad\\anaconda3\\anaconda\\lib\\site-packages\\IPython\\core\\pylabtools.py:151: UserWarning: Glyph 21333 (\\N{CJK UNIFIED IDEOGRAPH-5355}) missing from current font.\n",
      "  fig.canvas.print_figure(bytes_io, **kw)\n",
      "D:\\1.Notepad\\anaconda3\\anaconda\\lib\\site-packages\\IPython\\core\\pylabtools.py:151: UserWarning: Glyph 25670 (\\N{CJK UNIFIED IDEOGRAPH-6446}) missing from current font.\n",
      "  fig.canvas.print_figure(bytes_io, **kw)\n",
      "D:\\1.Notepad\\anaconda3\\anaconda\\lib\\site-packages\\IPython\\core\\pylabtools.py:151: UserWarning: Glyph 30340 (\\N{CJK UNIFIED IDEOGRAPH-7684}) missing from current font.\n",
      "  fig.canvas.print_figure(bytes_io, **kw)\n",
      "D:\\1.Notepad\\anaconda3\\anaconda\\lib\\site-packages\\IPython\\core\\pylabtools.py:151: UserWarning: Glyph 35282 (\\N{CJK UNIFIED IDEOGRAPH-89D2}) missing from current font.\n",
      "  fig.canvas.print_figure(bytes_io, **kw)\n",
      "D:\\1.Notepad\\anaconda3\\anaconda\\lib\\site-packages\\IPython\\core\\pylabtools.py:151: UserWarning: Glyph 36895 (\\N{CJK UNIFIED IDEOGRAPH-901F}) missing from current font.\n",
      "  fig.canvas.print_figure(bytes_io, **kw)\n",
      "D:\\1.Notepad\\anaconda3\\anaconda\\lib\\site-packages\\IPython\\core\\pylabtools.py:151: UserWarning: Glyph 24230 (\\N{CJK UNIFIED IDEOGRAPH-5EA6}) missing from current font.\n",
      "  fig.canvas.print_figure(bytes_io, **kw)\n",
      "D:\\1.Notepad\\anaconda3\\anaconda\\lib\\site-packages\\IPython\\core\\pylabtools.py:151: UserWarning: Glyph 21644 (\\N{CJK UNIFIED IDEOGRAPH-548C}) missing from current font.\n",
      "  fig.canvas.print_figure(bytes_io, **kw)\n",
      "D:\\1.Notepad\\anaconda3\\anaconda\\lib\\site-packages\\IPython\\core\\pylabtools.py:151: UserWarning: Glyph 38543 (\\N{CJK UNIFIED IDEOGRAPH-968F}) missing from current font.\n",
      "  fig.canvas.print_figure(bytes_io, **kw)\n",
      "D:\\1.Notepad\\anaconda3\\anaconda\\lib\\site-packages\\IPython\\core\\pylabtools.py:151: UserWarning: Glyph 26102 (\\N{CJK UNIFIED IDEOGRAPH-65F6}) missing from current font.\n",
      "  fig.canvas.print_figure(bytes_io, **kw)\n",
      "D:\\1.Notepad\\anaconda3\\anaconda\\lib\\site-packages\\IPython\\core\\pylabtools.py:151: UserWarning: Glyph 38388 (\\N{CJK UNIFIED IDEOGRAPH-95F4}) missing from current font.\n",
      "  fig.canvas.print_figure(bytes_io, **kw)\n",
      "D:\\1.Notepad\\anaconda3\\anaconda\\lib\\site-packages\\IPython\\core\\pylabtools.py:151: UserWarning: Glyph 21464 (\\N{CJK UNIFIED IDEOGRAPH-53D8}) missing from current font.\n",
      "  fig.canvas.print_figure(bytes_io, **kw)\n",
      "D:\\1.Notepad\\anaconda3\\anaconda\\lib\\site-packages\\IPython\\core\\pylabtools.py:151: UserWarning: Glyph 21270 (\\N{CJK UNIFIED IDEOGRAPH-5316}) missing from current font.\n",
      "  fig.canvas.print_figure(bytes_io, **kw)\n",
      "D:\\1.Notepad\\anaconda3\\anaconda\\lib\\site-packages\\IPython\\core\\pylabtools.py:151: UserWarning: Glyph 20540 (\\N{CJK UNIFIED IDEOGRAPH-503C}) missing from current font.\n",
      "  fig.canvas.print_figure(bytes_io, **kw)\n"
     ]
    },
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<Figure size 432x288 with 1 Axes>"
      ]
     },
     "metadata": {
      "needs_background": "light"
     },
     "output_type": "display_data"
    }
   ],
   "source": [
    "import numpy as np\n",
    "from scipy.integrate import odeint\n",
    "import matplotlib.pyplot as plt\n",
    "\n",
    "# 常量\n",
    "g = 9.8  # 重力加速度 (m/s^2)\n",
    "l = 1    # 摆长 (m)\n",
    "\n",
    "# 定义二阶微分方程\n",
    "def diff2(d_list, t):\n",
    "    omega, theta = d_list  # 角速度 omega 和角度 theta\n",
    "    return np.array([-g/l * theta, omega])  # 返回的方程组\n",
    "\n",
    "# 时间范围\n",
    "t = np.linspace(0, 20, 2000)\n",
    "\n",
    "# 初始条件 (角速度 ω(0) = 0, 角度 θ(0) = 35 度 = 35/180*np.pi 弧度)\n",
    "initial_conditions = [0, 35/180*np.pi]\n",
    "\n",
    "# 使用 odeint 求解微分方程\n",
    "result = odeint(diff2, initial_conditions, t)\n",
    "\n",
    "# 提取角速度 ω 和角度 θ\n",
    "omega = result[:, 0]  # 角速度随时间变化\n",
    "theta = result[:, 1]  # 角度随时间变化\n",
    "\n",
    "# 输出部分：打印一些解的值\n",
    "print(\"时间 (s)\\t角速度 ω (rad/s)\\t角度 θ (rad)\")\n",
    "for i in range(0, len(t), 200):  # 每隔200个点输出一次\n",
    "    print(f\"{t[i]:.2f}\\t\\t{omega[i]:.4f}\\t\\t{theta[i]:.4f}\")\n",
    "\n",
    "# 绘图部分\n",
    "plt.plot(t, omega, label='角速度 ω(t)')\n",
    "plt.plot(t, theta, label='角度 θ(t)')\n",
    "plt.xlabel('时间 (s)')\n",
    "plt.ylabel('值')\n",
    "plt.title('单摆的角速度和角度随时间变化')\n",
    "plt.legend()\n",
    "plt.grid()\n",
    "plt.show()\n"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "### 插值 interp1d"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "#### 准备数据"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 17,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "[0.         0.36363636 0.72727273 1.09090909 1.45454545 1.81818182\n",
      " 2.18181818 2.54545455 2.90909091 3.27272727 3.63636364 4.        ]\n",
      "[-0.65364362 -0.61966189 -0.51077021 -0.31047698 -0.00715476  0.37976236\n",
      "  0.76715099  0.99239518  0.85886263  0.27994201 -0.52586509 -0.99582185]\n"
     ]
    },
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<Figure size 432x288 with 1 Axes>"
      ]
     },
     "metadata": {
      "needs_background": "light"
     },
     "output_type": "display_data"
    }
   ],
   "source": [
    "#它使用 NumPy 生成 x 轴上的点，并计算对应的 y 值（基于一个数学函数），然后使用 Matplotlib 绘制这些点\n",
    "import numpy as np\n",
    "from scipy import interpolate as intp#模块用于数据插值操作，\n",
    "import matplotlib.pyplot as plt\n",
    "\n",
    "x = np.linspace(0, 4, 12)#x 轴上的 12 个等间距点，范围从 0 到 4\n",
    "y = np.cos(x**2/3 + 4)#公式计算的是余弦函数 cos 的值\n",
    "\n",
    "print (x)\n",
    "print (y)\n",
    "plt.plot(x, y,'o')#用圆点 'o' 绘制 x 和 y 的散点图\n",
    "plt.show()"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "#### 构造拟合函数"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 18,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<Figure size 432x288 with 1 Axes>"
      ]
     },
     "metadata": {
      "needs_background": "light"
     },
     "output_type": "display_data"
    }
   ],
   "source": [
    "#如何使用 interp1d 进行线性和立方插值，并将结果可视化\n",
    "\n",
    "f1 = intp.interp1d(x,y, kind = 'linear')#f1 是线性插值函数\n",
    "\n",
    "f2 = intp.interp1d(x,y, kind = 'cubic')#f2 是立方插值函数。\n",
    "\n",
    "\n",
    "xnew = np.linspace(0, 4, 30)#生成新的 x 值用于插值：\n",
    "\n",
    "plt.plot(x, y, 'o', xnew, f1(xnew), '-', xnew, f2(xnew), '--')#绘制原始数据点,'-' 绘制线性插值结果（用实线表示）,绘制立方插值结果（用虚线表示）\n",
    "\n",
    "plt.legend(['data', 'linear', 'cubic','nearest'], loc = 'best')\n",
    "\n",
    "plt.show()\n"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "### 线性代数"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "#### 求解线性方程组 linalg"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "解下面的联立方程组\n",
    "\n",
    "$x + 3y + 5z = 10$\n",
    "\n",
    "$2x + 5y +  z =  8$\n",
    "\n",
    "$2x + 3y + 8z = 3$"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 3,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "[-9.28  5.16  0.76]\n"
     ]
    }
   ],
   "source": [
    "# 导入scipy和numpy包\n",
    "from scipy import linalg #scipy.linalg: 这个模块包含了许多线性代数的函数，用于解线性方程、计算矩阵的逆、特征值等。\n",
    "import numpy as np\n",
    "\n",
    "# 声明numpy数组\n",
    "a = np.array([[1, 3, 5], [2, 5, 1], [2, 3, 8]])#a 是一个3x3的矩阵， 代表线性方程组的系数矩阵\n",
    "b = np.array([10, 8, 3])#b 是一个包含3个元素的数组，代表方程组的右侧常数向量\n",
    "\n",
    "# 求解\n",
    "x = linalg.solve(a, b)#inalg.solve(a, b) 是 scipy.linalg 中的函数，用来求解方程组 𝐴𝑥=𝑏，返回x1,x2,x3的值\n",
    "\n",
    "# 输出解值\n",
    "print (x)\n"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "#### 计算行列式"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 4,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "-4.0\n"
     ]
    }
   ],
   "source": [
    "# 声明numpy数组\n",
    "A = np.array([[3,4],[7,8]])\n",
    "\n",
    "# 计算行列式\n",
    "x = linalg.det(A)#x = linalg.det(A) 是用来计算矩阵 A 的行列式\n",
    "\n",
    "# 输出结果\n",
    "print (x)\n"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 5,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "-25.000000000000004\n"
     ]
    }
   ],
   "source": [
    "from scipy import linalg\n",
    "import numpy as np\n",
    "\n",
    "# 声明矩阵 A\n",
    "A = np.array([[1, 3, 5], [2, 5, 1], [2, 3, 8]])\n",
    "\n",
    "# 计算行列式\n",
    "x = linalg.det(A)\n",
    "\n",
    "# 输出行列式值\n",
    "print(x)\n"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "#### 求取特征值与特征向量"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 6,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "特征值\n",
      "[10.5540456 +0.j -0.5873064 +0.j  4.03326081+0.j]\n",
      "特征向量\n",
      "[[-0.51686204 -0.94195144  0.11527992]\n",
      " [-0.32845853  0.31778071 -0.81936883]\n",
      " [-0.79054957  0.10836468  0.56155611]]\n"
     ]
    }
   ],
   "source": [
    "# 求解\n",
    "l, v = linalg.eig(A)#, v = linalg.eig(A) 用于计算矩阵 A 的特征值和特征向量\n",
    "\n",
    "# 打印特征值\n",
    "print('特征值')\n",
    "print (l)\n",
    "\n",
    "# 打印特征向量\n",
    "print('特征向量')\n",
    "print (v)\n"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "#### 奇异值分解\n",
    "假设A是一个 m*n 的矩阵，　\n",
    "$\n",
    "A_{m \\times n} = U_{m\\times m}\\Sigma_{m\\times n} V^{T}_{n\\times n}$\n",
    "其中 $\\Sigma$是一个对角矩阵，对角线上的值为奇异值，　U和V中的向量是正交的"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 7,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "原矩阵\n",
      "[[-2.75187568-0.47071218j -1.09928789+0.05295304j]\n",
      " [-1.83104572+0.19438318j  0.5949276 -0.38375126j]\n",
      " [-0.38403744-1.37815219j  0.83402732-0.07856448j]]\n",
      "奇异值分解\n",
      "[[-0.77689663-0.09471181j -0.27079637+0.50968084j  0.17058392+0.15892509j]\n",
      " [-0.47641849+0.02131315j  0.40984312-0.46968735j -0.47486784+0.39811319j]\n",
      " [-0.07228829-0.39345504j  0.48841151-0.19942761j  0.7446349 +0.08467123j]] #U\n",
      "[[ 0.98487903+0.j          0.14330176+0.09735456j]\n",
      " [-0.17324348+0.j          0.81466208+0.55345496j]] #Vh\n",
      "[3.68471065 1.43833733] #s\n"
     ]
    }
   ],
   "source": [
    "# 对一个复数矩阵进行奇异值分解\n",
    "\n",
    "#声明一个复数矩阵 \n",
    "#np.random.randn(3, 2)生成一个形状为 3×2的服从标准正态分布 (均值为0，标准差为1) 的随机数的函数\n",
    "a = np.random.randn(3, 2) + 1.j*np.random.randn(3, 2)\n",
    "\n",
    "# 输出原矩阵\n",
    "print('原矩阵')\n",
    "print(a)\n",
    "\n",
    "# 求解，linalg.svd(a) 计算矩阵 a 的奇异值分解，U 是一个 3×3的矩阵，包含左奇异向量，Vh 是 V 矩阵的共轭转置，它是一个 \n",
    "#2×2 的矩阵，包含右奇异向量。s 是一个包含奇异值的数组，奇异值按降序排列\n",
    "U, s, Vh = linalg.svd(a)\n",
    "\n",
    "# 输出结果\n",
    "print('奇异值分解')\n",
    "print(U, \"#U\")\n",
    "print(Vh, \"#Vh\")\n",
    "print(s, \"#s\")\n"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "### 优化 optimize"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "#### 标量函数极值求解 fmin_bfgs"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "求函数极小值 \n",
    "$f(x)=x^2+2x+9$"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "计算该函数最小值的有效方法之一是使用带起点的BFGS算法。该算法从参数给定的起始点计算函数的梯度下降，并输出梯度为零、二阶导数为正的极小值。"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 9,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<Figure size 432x288 with 1 Axes>"
      ]
     },
     "metadata": {
      "needs_background": "light"
     },
     "output_type": "display_data"
    }
   ],
   "source": [
    "import numpy as np\n",
    "from scipy import optimize#这个模块可以用于优化函数\n",
    "import matplotlib.pyplot as plt\n",
    "\n",
    "# 定义函数\n",
    "def f(x):\n",
    "  return x**2 + 2*x + 9\n",
    "\n",
    "# x取值：-10到10之间，间隔0.1\n",
    "x = np.arange(-10, 10, 0.1)#生成从 -10 到 10（不包含10）之间的一个数组，步长为 0.1\n",
    "\n",
    "# 画出函数曲线\n",
    "plt.plot(x, f(x))\n",
    "# plt.savefig('./opt2-1.png') # 保存要显示的图片\n",
    "plt.show()\n"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 11,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "Optimization terminated successfully.\n",
      "         Current function value: 8.000000\n",
      "         Iterations: 2\n",
      "         Function evaluations: 6\n",
      "         Gradient evaluations: 3\n",
      "xmin:  -1.00000000944232\n",
      "ymin:  8.0\n"
     ]
    },
    {
     "data": {
      "image/png": "iVBORw0KGgoAAAANSUhEUgAAAXcAAAD4CAYAAAAXUaZHAAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjUuMSwgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy/YYfK9AAAACXBIWXMAAAsTAAALEwEAmpwYAAApdklEQVR4nO3deVyVdd7/8deHXUBFVhEVRE1xX7DcmhYtyyyXprKVyrZpn+lupmWaalp+LTNNdZc1lZU1bU5p2upeuaSFOwoIiiKIgIKIyM739wenboYBBQ7nXOccPs/Hw8c557rO4XpzHXh7cZ3r+l5ijEEppZRn8bI6gFJKqfan5a6UUh5Iy10ppTyQlrtSSnkgLXellPJAPlYHAAgPDzdxcXFWx1BKKbeyadOmw8aYiKbmuUS5x8XFkZycbHUMpZRyKyKyv7l5ultGKaU8kJa7Ukp5IC13pZTyQFruSinlgbTclVLKA2m5K6WUB9JyV0opD6TlrpRSFnlnXRYrduU75GtruSullAVKTlTz3LfpLNdyV0opz7Eg+QDl1bUkjY9zyNfXcldKKSerrTPM/3EfZ/QJZVCPLg5Zhpa7Uko52crUfHKKy7lhQpzDlqHlrpRSTvbu+n3EhHRickKUw5ah5a6UUk6UfqiU9XuOcO24WHy8HVfBWu5KKeVE767fh7+PF1ck9nLocrTclVLKSY6eqGLRlhxmjoyhW5CfQ5d1ynIXkbdFpEBEUhpMe15E0kRku4gsEpGQBvMeFJFMEUkXkSkOyq2UUm7nk58PUFFd57DDHxtqyZb7u8AFjaYtB4YYY4YBu4EHAURkEDAbGGx7zVwR8W63tEop5aZqaut478f9jI0PJSHaMYc/NnTKcjfG/AAUNZq2zBhTY3u4Aehpuz8d+NgYU2mMyQIygdPbMa9SSrmlFakF5B4t5/rxfZyyvPbY534j8I3tfgxwoMG8HNs0pZTq0N5dn2U7/DHSKcuzq9xF5GGgBvjgl0lNPM0089pbRCRZRJILCwvtiaGUUi4tNe8YG/YWcZ2DD39sqM1LEZEkYBpwtTHmlwLPARoe39MTONjU640xbxhjEo0xiREREW2NoZRSLm/++n0E+HpxxRjHHv7YUJvKXUQuAP4EXGKMOdFg1hJgtoj4i0gfoD/wk/0xlVLKPR05XsmiLbnMHBlDSKBjD39syOdUTxCRj4CzgXARyQEepf7oGH9guYgAbDDG3GaM2SkiC4Bd1O+uucMYU+uo8Eop5eo+2JhNZU0dN05wzgepvzhluRtjrmxi8ryTPP8p4Cl7QimllCeoqK7lvR/3cfaACPpHdXbqsvUMVaWUcpAl2w5y+HgVN02Md/qytdyVUsoBjDHMW5PFwO6dmdAvzOnL13JXSikHWJNxmPT8Um46Mx7bZ5NOpeWulFIO8NbaLCI6+3Px8GhLlq/lrpRS7Sz9UCk/7C4kaVws/j7WDK+l5a6UUu1s3tq9BPh6cfUZsZZl0HJXSql2VFhayedbDvLb0T0dPmb7yWi5K6VUO3p/w36qap1/0lJjWu5KKdVOKqpr+deG/UxOiCQ+ItjSLFruSinVThZuzqWorIo5Fpy01JiWu1JKtYO6OsO8tXsZEtOFsfGhVsfRcldKqfawKq2APYVl3DTRmpOWGtNyV0qpdvD693uICenERcOsOWmpMS13pZSyU/K+IpL3F3PTmX3wddKVlk7FNVIopZQbe/37PXQL9HXqlZZORctdKaXssDu/lBWpBVw3Lo5Av1NeIsNptNyVUsoO//y+fqiBpPFxVkf5D1ruSinVRnkl5SzemsvsMb0JtXCogaZouSulVBvNW5OFAeZMtHaogaZouSulVBuUnKjmo5+yuXhYNL1CA62O81+03JVSqg3e37CPsqpabj2rr9VRmqTlrpRSrVRRXcs76/Zx9oAIEqK7WB2nSVruSinVSv/elMORsipu/Y1rbrWDlrtSSrVKbZ3hzR/2MrxXiEsMENYcLXellGqFr3bkkV10gt+d5RoDhDXnlOUuIm+LSIGIpDSYFioiy0Ukw3bbrcG8B0UkU0TSRWSKo4IrpZSz1dUZXl2VSf/IYM4f1N3qOCfVki33d4ELGk17AFhpjOkPrLQ9RkQGAbOBwbbXzBURay79rZRS7Wx5aj7p+aXccU4/vLxcd6sdWlDuxpgfgKJGk6cD82335wMzGkz/2BhTaYzJAjKB09snqlJKWccYwyurMokNC2SaiwzrezJt3eceZYzJA7DdRtqmxwAHGjwvxzbtv4jILSKSLCLJhYWFbYyhlFLO8f3uQnbklnD72X3xcZFhfU+mvRM29XeKaeqJxpg3jDGJxpjEiIiIdo6hlFLtxxjD/67KpEfXAGaO7Gl1nBZpa7nni0g0gO22wDY9B2g4oHFP4GDb4ymllPU27C1i0/5ibju7L34+rr/VDm0v9yVAku1+ErC4wfTZIuIvIn2A/sBP9kVUSilrvbo6k/Bgfy5PdJ2LcZzKKUeWF5GPgLOBcBHJAR4FngEWiMgcIBu4DMAYs1NEFgC7gBrgDmNMrYOyK6WUw23OLmZt5mEemjqQAF/3OfjvlOVujLmymVmTmnn+U8BT9oRSSilX8eqqTEICfbn6jFiro7SKe+w8UkopC6TklrAyrYA5E/oQ5O86l9BrCS13pZRqxtzvMuns78N1LnYJvZbQcldKqSZk5JfyTcohrhsfS9dOvlbHaTUtd6WUasLLqzLp5OvNjRNc7xJ6LaHlrpRSjezOL+XL7QdJGh9HWLC/1XHaRMtdKaUaeWlFBoG+3txyZrzVUdpMy10ppRpIO3SMr3bkccOEPnQL8rM6TptpuSulVAMvrcigs78PN53pnvvaf6HlrpRSNjsPlvBNyiFumBBHSKD7brWDlrtSSv3qpRUZdA7wYc5E993X/gstd6WUov5s1GW78pkzsQ9dA93vuPbG3Lrcs4+c4K6PtlBQWmF1FKWUm3txRQZdAny4caJ772v/hVuXe50xfL0jj7mr91gdRSnlxrbnHGVFaj43nxlPlwD332oHNy/3uPAgLk/syYcbs8kpPmF1HKWUm3pxRQYhgb5cPyHO6ijtxq3LHeCuc/uDwMsrM6yOopRyQ1sPHGVVWgE3nxlPZw/ZagcPKPceIZ24dmwsn27KYU/hcavjKKXczN+WphMa5EeSG478eDJuX+4Avzu7LwG+3rywfLfVUZRSbmR95mHWZh7m9rP7Euxm47WfikeUe3iwP3Mm9uGr7XnsPFhidRyllBswxvDs0nR6dA3gmrHudZWllvCIcge46cx4unby5e/LdOtdKXVqy3bls+3AUe6dfJpbXRu1pTym3Lt28uXWs+JZlVZA8r4iq+MopVxYbZ3hb0vT6RsRxKxRMVbHcQiPKXeA68fHER7sz/NL0zHGWB1HKeWiFm3JJaPgOPedPwAfb4+qwV951HcV6OfDXef2Y2NWEWszD1sdRynlgipravnH8t0MjenKhUO6Wx3HYTyq3AFmn96LmJBOuvWulGrShxuzyT1azh8vGICIWB3HYTyu3P19vLlncn+255SwdOchq+MopVxIWWUNr6zKZFx8GBP7hVsdx6HsKncR+b2I7BSRFBH5SEQCRCRURJaLSIbttlt7hW2pWSNj6BcZzHPfplNdW+fsxSulXNTba7M4UlbF/R6+1Q52lLuIxAB3A4nGmCGANzAbeABYaYzpD6y0PXYqH28vHrhgIHsPl/HxzwecvXillAsqLqvijR/2ct6gKEb1dvo2p9PZu1vGB+gkIj5AIHAQmA7Mt82fD8ywcxltMikhktP7hPLSit0cr6yxIoJSyoXM/S6T41U13D9lgNVRnKLN5W6MyQX+BmQDeUCJMWYZEGWMybM9Jw+IbOr1InKLiCSLSHJhYWFbYzRLRHhoagKHj9f/b62U6rgOFJ1g/vr9XDqqJ6dFdbY6jlPYs1umG/Vb6X2AHkCQiFzT0tcbY94wxiQaYxIjIiLaGuOkRvQK4aJh0bz5w14KjukFPZTqqJ5bmo6XF/zP+R1jqx3s2y0zGcgyxhQaY6qBhcB4IF9EogFstwX2x2y7P04ZQE1dHf9YoUMCK9URbcku5ottB7n5zHi6dw2wOo7T2FPu2cBYEQmU+o+dJwGpwBIgyfacJGCxfRHtExsWxNVnxPLJz9lk5JdaGUUp5WTGGJ7+OpXwYD9uPauv1XGcyp597huBT4HNwA7b13oDeAY4T0QygPNsjy1196T+BPn58Oy3aVZHUUo50bJd+fy8r5jfn3eaxw3peyp2fbfGmEeBRxtNrqR+K95lhAb58btz+vLct+ls2HuEsfFhVkdSSjlYdW0dz3yTRr/IYK5I7GV1HKfzuDNUm3PjhD5Edw3g/32dqsMSKNUBfLgxm6zDZTw0daDHDg52Mh3mOw7w9eYP553GtpwSvtyeZ3UcpZQDHauo5sUVuxkXH8Y5A5o8GtvjdZhyB5g1qicDu3fmmW/SqKiutTqOUspBXvtuD8Unqnn4ogSPH2agOR2q3L29hL9cPIjco+W8tUZPbFLKE+UeLWfe2ixmjYxhSExXq+NYpkOVO8D4vuFMGRzF3O/2kK8nNinlcZ7/Ng0B7usgwww0p8OVO8DDUwdRU2v00EilPMym/UV8vrX+hKWYkE5Wx7FUhyz33mGB3DixDws357L1wFGr4yil2kFdneGxJbvo3iWA28/pWCcsNaVDljvAnef2IzzYn79+sVMPjVTKA/x70wF25Jbw4NSBBPp1rBOWmtJhyz3Y34c/ThnA5uyjLNl20Oo4Sik7HKuo5vml6STGduOS4T2sjuMSOmy5A/x2dE+GxHThmW/SOFGlY74r5a5eXpHBkbIqHr14cIc99LGxDl3uXl7CoxcPJq+kgn9+r4dGKuWOMguO8+76fVw+uhdDe3bcQx8b69DlDjAmLpRpw6J5/fs95B4ttzqOUqoVjDE88eUuOvl6c/8FHfvQx8Y6fLkDPDg1AYCnv061OIlSqjVWpxfw/e5C7pncn/Bgf6vjuBQtdyAmpBO/O7svX23PY13mYavjKKVaoKqmjie+TCU+IojrxsVZHcflaLnb3HZWX2LDAnlkcQqVNTrujFKu7p11WWQdLuMv0wbh56NV1piuEZsAX28eu2QwewvLmLc2y+o4SqmTyCsp5+WVGUwaGMnZHXTUx1PRcm/gnAGRTBkcxf+uzNQPV5VyYX/9Yhc1dYZHLx5sdRSXpeXeyF9sPyx//WKnxUmUUk1ZnV7ANymHuOvcfvQOC7Q6jsvScm8kJqQTd03qx9Kd+axOL7A6jlKqgYrqWh5dvJP4iCBu/k281XFcmpZ7E26aGE98RBCPLdmpF/VQyoW8ujqT7KITPDl9CP4+3lbHcWla7k3w8/HiielD2H/kBK9/v8fqOEopYE/hcV7/fg8zRvRgfL9wq+O4PC33ZkzoF860YdHM/W4P2UdOWB1HqQ7NGMMjn6cQ4OvNwxcNsjqOW9ByP4k/XzQIXy/hL0tSdFhgpSy0ZNtB1u85wh+nDCCis56J2hJa7ifRvWsA950/gO/SC/lie57VcZTqkI5VVPPkV6kM69mVq86ItTqO27Cr3EUkREQ+FZE0EUkVkXEiEioiy0Ukw3bbrb3CWiFpfBzDe4Xw+JKdFJdVWR1HqQ7n70vTOXK8kqdmDMXbS4fzbSl7t9xfAr41xgwEhgOpwAPASmNMf2Cl7bHb8vYSnpk1lJLyap7SgcWUcqrN2cW8t2E/146N1eF8W6nN5S4iXYDfAPMAjDFVxpijwHRgvu1p84EZ9kW0XkJ0F249K55PN+WwNkMHFlPKGSpravnTp9uJ7hLA/RcMtDqO27Fnyz0eKATeEZEtIvKWiAQBUcaYPADbbZMDP4jILSKSLCLJhYWFdsRwjrvO7U+f8CAeWrSD8io99l0pR3t19R4yCo7z1KyhBPvrNVFby55y9wFGAa8ZY0YCZbRiF4wx5g1jTKIxJjEiIsKOGM4R4OvN0zOHkl10ghdX7rY6jlIeLTXvGHNXZzJzZAzn6MBgbWJPuecAOcaYjbbHn1Jf9vkiEg1gu/WYc/jH9Q3jisRevLUmi5TcEqvjKOWRausMD3y2na6dfHlkmh7T3lZtLndjzCHggIj8cm2rScAuYAmQZJuWBCy2K6GLeWhqAt0C/Xhg4XZqauusjqOUx3lnXRbbckp47JLBhAb5WR3Hbdl7tMxdwAcish0YATwNPAOcJyIZwHm2xx6ja6Avj18ymJTcY7y9Tsd9V6o97T9Sxt+WpTM5IYppw6KtjuPW7PqUwhizFUhsYtYke76uq5s6tDuTE6J4YfluJidEER8RbHUkpdyeMYYHPtuBr5cXT84Ygoge024PPUO1DUSEp2bWj0r3P//eRm2dDk2glL0++fkAP+49woNTE+jeNcDqOG5Py72NoroE8Pglg9mcfZQ31+y1Oo5Sbi2vpJynvk5lbHwos8f0sjqOR9Byt8P0ET2YMjiKF5btZnd+qdVxlHJLxhj++Ol2amoNz146DC8dYqBdaLnboX73zFCCA3y4b8E2qvXoGaVa7YON2azJOMxDFyUQGxZkdRyPoeVup/Bgf56aMYQduSW89p1e2EOp1th/pIynv07lzP7hXHNGb6vjeBQt93Zw4dBoLhneg5dXZrDzoJ7cpFRL1NYZ7v/3dry9hGcvHaZHx7QzLfd28tfpg+kW5Md9C7ZRWaNjzyh1Km+vzeKnfUU8dvFgeoR0sjqOx9FybychgX48M2soaYdKeXllhtVxlHJpGfmlPL8snfMGRTFrVIzVcTySlns7mpQQxW9H9+S17/aQvK/I6jhKuaSqmjp+v2Arwf4+PD1zqO6OcRAt93b26MWDiOnWiXs/2cqximqr4yjlcv6+LJ2U3GM8M2uoXg/VgbTc21nnAF9evGIkeSUVPLp4p9VxlHIp6zIP888f9nLVGb05f3B3q+N4NC13Bxgd2427zu3Hoi25LN6aa3UcpVxCcVkVf1iwlfiIIB65SIfydTQtdwe585x+jI7txp8XpXCg6ITVcZSylDGGBxZup6isipdnj6STn7fVkTyelruD+Hh78eIVIwD4/Sdbdex31aF98vMBlu7M5/4pAxgSoxe6dgYtdwfqFRrIEzOGkLy/mFdWZ1odRylL7Ck8zuNf7GJ83zBumhhvdZwOQ8vdwWaMjGHmyBheXpnBj3uOWB1HKaeqqK7ljg8208nPmxcuH6GDgjmRlrsTPDljCHHhQdz98RYKSyutjqOU0zz+xS7SDpXywuXDdYx2J9Nyd4Igfx9evWoUx8qr+cOCrdTpxT1UB7B4ay4f/ZTNbWf15ewBkVbH6XC03J0kIboLj10ymDUZh5n7ne5/V55tb+FxHlq4g8TYbtx3/mlWx+mQtNydaPaYXlwyvAcvLN/Nhr26/115porqWu74cAu+Pl68fOVIfL21Zqyga92JRISnZw0lNiyIez7ewuHjuv9deZ6/frmL1LxjvHD5cB3t0UJa7k4WbNv/fvRENXd+uFmPf1ce5d/JB/hwYza3nhXPuQOjrI7ToWm5W2BQjy48PXMoG/YW8dzSdKvjKNUuUnJLePjzFMbFh3H/+QOsjtPhablb5NLRPbl2bCxv/LCXr7bnWR1HKbsUl1Vx6/ubCAvy43+vGomP7me3nL4DFnpk2iBG9Q7h/k+3kZFfanUcpdqkts78eg7Ha9eMJjxYh/F1BXaXu4h4i8gWEfnS9jhURJaLSIbttpv9MT2Tn48Xc68eTaCfD7e+v4lSHf9duaF/LN/NmozDPD59MCN6hVgdR9m0x5b7PUBqg8cPACuNMf2BlbbHqhnduwbw6lUj2V90gj8s2KYnOCm3snTnIV5ZnckVib248vTeVsdRDdhV7iLSE7gIeKvB5OnAfNv9+cAMe5bREZwRH8afL0pg+a58Xli+2+o4SrXIroPH+P0nWxneK4THpw+2Oo5qxN4t9xeBPwINj+eLMsbkAdhumzzvWERuEZFkEUkuLCy0M4b7u358HFee3otXVmfqBT6Uyzt8vJKb30umS4Avb147mgBfHZ/d1bS53EVkGlBgjNnUltcbY94wxiQaYxIjIiLaGsNjiAiPXzKE0/uEcv+n29l64KjVkZRqUmVNLbe9v4kjZZW8eV0ikV10QDBXZM+W+wTgEhHZB3wMnCsi/wLyRSQawHZbYHfKDsLPx4vXrxlNZGd/bnkvmUMlFVZHUuo/GGP486IUkvcX87fLhjO0p154w1W1udyNMQ8aY3oaY+KA2cAqY8w1wBIgyfa0JGCx3Sk7kNAgP+YljaGssoab30umvKrW6khK/Wre2iz+vSmHuyf1Z9qwHlbHUSfhiOPcnwHOE5EM4DzbY9UKA7p35qXZI0k5WMK9n2yhVo+gUS5g6c5DPPV1KhcO6c69k/pbHUedQruUuzHmO2PMNNv9I8aYScaY/rbbovZYRkczeVAUj1w0iKU783nyq11Wx1Ed3ObsYu7+aAvDe4boFZXchI/VAVTzbpzYh5zict5el0XPboHMmdjH6kiqA9p/pIyb5ifTvWsA85IS6eSnR8a4Ay13F/fwRQkcPFrOk1/tokfXAC4cGm11JNWBFJVVcf07P2OM4Z3rxxCmQwu4DR1bxsV5ewkvzh7ByF4h3PvJVjbt171cyjkqqmu5+b1kco+W81ZSIvERwVZHUq2g5e4GAny9eStpDNFdA5gzP1kHGVMOV1Nbx90fbWFzdjEvXTGC0bGhVkdSraTl7iZCg/x478Yz8PX24tp5P3Gg6ITVkZSHqqszPLBwB8t25fPotEG6K9BNabm7kd5hgbw/53ROVNVw7byNFJbqZfpU+zLG8ORXqXy6KYd7J/fn+gn6Ib670nJ3MwO7d+GdG8aQf6yS697+iZJyHSZYtZ9XVmXy9rosrh8fxz16LLtb03J3Q6NjQ3n92tFkFpQy592f9SxW1S7e+3Eff1++m1kjY/jLtEGI6LHs7kzL3U2ddVoE/7hiBJuyi7nl/WQqqrXgVdstSD7Ao0t2Mjkhkmd/O0xPUvIAWu5ubNqwHjx76TDWZh7mlvc3acGrNvl0Uw5/+mw7E/uF88pVo/DV6596BH0X3dzlib14ZtZQfthdyO/+tYnKGi141XKLtuRw/6fbGN83jDevS9Rx2T2IlrsHuGJMb56eOZTV6YXc/q/NWvCqRRZvzeW+BdsY2yeMt64bo8XuYbTcPcRVZ/TmiRlDWJlWwB0fbNGCVyf1xbaD/P6TrYyJC2Xe9TpejCfScvcg146N5a/TB7MiNZ+b39ukR9GoJi34+QD3fLyFxNhQ3r5+DIF+OsSUJ9Jy9zDXjYvjmVlDWZNRSNLbP1FaocfBq//zzros/vjZdib0C+fdG8cQ5K/F7qm03D3Q7NN78/LskWzOLubqtzZSXFZldSRlMWMMr6zK4PEvdjFlcBRvJSXqFruH03L3UBcP78E/rx1N2qFSrnjjRwqO6fVYOypjDM98m8bflu1m5sgYXr1qFP4+uo/d02m5e7BJCVG8e8MYcorLufT19ewpPG51JOVk1bV1/Omz7fzz+71cM7Y3f79sOD56HHuHoO+yhxvfN5yPbh7LicpaLn1tPcn7dDz4juJ4ZQ1z5iezILn+gtZPTB+iZ552IFruHcDwXiEsvH083QL9uOqtjXyzI8/qSMrBCo5VcMU/f2Rd5mGevXQofzjvNB0rpoPRcu8gYsOC+Ox34xnSowu3f7iZd9ZlWR1JOUhmQSkz564n63AZbyUlcsWY3lZHUhbQcu9AQoP8+PDmsZw/KIrHv9jFI5+nUF1bZ3Us1Y6+313IrLnrqayp45NbxnHOgEirIymLaLl3MAG+3sy9ejS3/iae9zfs59p5GynSQyXdnjGGN3/Yyw3v/ESPkE4sun08Q3t2tTqWspCWewfk7SU8ODWBf1wxnM3ZR7nklbWk5h2zOpZqo4rqWu5bsI2nvk5lyuDuLLx9PL1CA62OpSzW5nIXkV4islpEUkVkp4jcY5seKiLLRSTDdtut/eKq9jRzZE8W3DqO6to6Zs1dz9f6QavbOVRS/8Hpwi25/OG803j1qlF6cpIC7NtyrwHuM8YkAGOBO0RkEPAAsNIY0x9YaXusXNSIXiF8cedEBkZ35vYPNvP4FzupqtH98O7gu/QCpr68hoyC47x+zWjuntRfD3VUv2pzuRtj8owxm233S4FUIAaYDsy3PW0+MMPOjMrBIrsE8PEtY7l+fBzvrNvHZa+v50DRCatjqWbU1Nbx/NI0rn/nZyKC/Vly50QuGNLd6ljKxYgxxv4vIhIH/AAMAbKNMSEN5hUbY/5r14yI3ALcAtC7d+/R+/fvtzuHst+3KXnc/+l2BHj+suFMGayl4UoOlVRw90db+GlfEbPH9OLRiwfrcL0dmIhsMsYkNjnP3nIXkWDge+ApY8xCETnaknJvKDEx0SQnJ9uVQ7Wf7CMnuPOjzWzPKeHasbE8OHWg7sd1Ad+mHOKhRTuoqK7lqZlDmDmyp9WRlMVOVu52HS0jIr7AZ8AHxpiFtsn5IhJtmx8NFNizDOV8vcMC+fdt47hpYh/+tXE/U19aw6b9OmyBVUrKq/nDJ1u57V+b6BESwJI7J2qxq1Oy52gZAeYBqcaYFxrMWgIk2e4nAYvbHk9Zxd/Hmz9PG8SHN42lutZw2es/8uy3aXqFJydbk1HIBS/+wOJtB7l7Un8W3T6BfpHBVsdSbqDNu2VEZCKwBtgB/HJ4xUPARmAB0BvIBi4zxpx0s093y7i20opqnvwylU+SDzCwe2f+36yhjOytR7g6Ukl5Nc99m8YHG7OJjwjiH5ePYHivEKtjKRfj0H3u7UHL3T2s2JXPnz9PIb+0gqvP6M39UwbStZOv1bE8ijGGJdsO8sSXqRSVVXLDhD7cP2WAXrxaNelk5a6fkqkWmzwoirF9w/j7snTmr9/H0p35PDJtEBcPi9YRB9vBvsNlPLI4hTUZhxnWsyvv3jCGITE6hIBqG91yV22SklvCQ4t2sD2nhHHxYTx8UYIWURuVVlTz2nd7eGttFn7eXtw/ZQDXjI3FW09IUqegu2WUQ9TWGT7cuJ8Xlu/maHk1M0fG8D/nD6BHSCero7mF6to6Pv4pmxdXZHCkrIoZI3rw4NQEoroEWB1NuQktd+VQxyqqmbt6D2+vy0KAORP7cOtv+tI1UPfHN8UYw9Kd+Ty3NI29hWWc0SeUP180SEdxVK2m5a6cIqf4BM8vTWfx1oME+/uQND6WORPjCQ3yszqaS6irM3y78xAvr8wg7VAp8RFBPHhhApMTIvUzC9UmWu7KqVLzjvHKqky+Tsmjk683146N5aYz44no7G91NEvU1Nbx1Y48XlmVSUbBceLDg7jjnH5MH9FDL1at7KLlriyRkV/KK6sz+WLbQXy8vJg2LJqk8XEd5njtorIqPv45mw82ZJN7tJzTooK589z+XDQ0Wj8sVe1Cy11ZKutwGe+uy+LTTTmUVdUyvFcI14+P5cIh0R53/LYxhh25Jbz3436WbDtIVU0d4/uGkTQ+jvMSonRIXtWutNyVSyitqGbh5lzm/7iPvYVldPb34cKh3ZkxMoaxfcLcuvhyik+weOtBPt+SS0bBcQL9vJk1KoakcXH0j+psdTzlobTclUsxxvDjniMs3JLLtymHOF5ZQ3TXAKYNi2ZSQhSjY7vh6wb7orOPnGBVWj5fpxzip6z6ETZOjwtl+sgeXDy8B10C9Ggh5Vha7spllVfVsiI1n8+35PJDRiHVtYbOAT785rQIzh0QycT+4S5z3HdFdS2bs4tZnVbAqrQC9hSWAdAvMpgZI3owfUSMXrtUOZWWu3ILpRXVrMs8zKq0AlalFXL4eCUAMSGdSIzrxujYbozq3Y1+kcGt21dfWAj79kFcHEREtOglxhhyj5azPaeETfuLSd5fzM7cEmrqDL7ewtj4MM4ZEMm5AyOJCw9q/TerVDvQcldup67OsPPgMX7aV8Sm/UUk7yumoLS+7L0EeocG0i+yM/2jgokNDSSyiz+RnQOI7OxPWLD//x2N8tFHMGcO+PlBVRXMmwdXXokxhtLKGgqOVVJQWkHBsUoOlpSTWXD8138nquqHN/b38WJ4zxBGx3VjdO9ujO0bRrC/DsukrKflrtyeMYac4nK25RwlI7++fDMKSsk6XEZ17X/+DItAgI83/t4QcLgA/+pKvIyhytuXSl8/KkJCqagx1NT9989+9y4B9IsMpl9kMP2jghkU3YXBPbri5+P6nwGojkdHhVRuT0ToFRr4X/u0q2vrKCitpOBYxa+3hcerKK+qoTL3EJVbtlNRJ9R6eeFfU0WAF/hPvxj/nj0IDfQjsos/EZ3rt/qjuvjTWT8EVR5Cy125NV9vL2JCOhHT1GBlhRFw7zQoL/+/aZ06wdsPtXjfu1LuSv/WVJ4rIqJ+H3unTtClS/3tvHla7KpD0C135dmuvBImT2710TJKuTstd+X5IiK01FWHo7tllFLKA2m5K6WUB9JyV0opD6TlrpRSHkjLXSmlPJBLDD8gIoXAfju+RDhwuJ3itCfN1Tqaq/VcNZvmap225oo1xjR5KJhLlLu9RCS5ufEVrKS5WkdztZ6rZtNcreOIXLpbRimlPJCWu1JKeSBPKfc3rA7QDM3VOpqr9Vw1m+ZqnXbP5RH73JVSSv0nT9lyV0op1YCWu1JKeSC3KHcRuUxEdopInYgkNpr3oIhkiki6iExp5vWhIrJcRDJst90clPMTEdlq+7dPRLY287x9IrLD9jyHX19QRB4TkdwG2aY287wLbOsxU0QecEKu50UkTUS2i8giEQlp5nlOWV+n+v6l3su2+dtFZJSjsjRYZi8RWS0iqbbfgXuaeM7ZIlLS4P39i6NzNVj2Sd8bi9bZgAbrYquIHBORexs9xynrTETeFpECEUlpMK1FfWT376MxxuX/AQnAAOA7ILHB9EHANsAf6APsAbybeP1zwAO2+w8Azzoh89+BvzQzbx8Q7sT19xjwP6d4jrdt/cUDfrb1OsjBuc4HfGz3n23ufXHG+mrJ9w9MBb4BBBgLbHTCexcNjLLd7wzsbiLX2cCXzvp5as17Y8U6a+J9PUT9yT5OX2fAb4BRQEqDaafso/b4fXSLLXdjTKoxJr2JWdOBj40xlcaYLCATOL2Z58233Z8PzHBIUBsREeBy4CNHLqednQ5kGmP2GmOqgI+pX28OY4xZZoypsT3cAPR05PJOoSXf/3TgPVNvAxAiItGODGWMyTPGbLbdLwVSgRhHLrOdOX2dNTIJ2GOMsecM+DYzxvwAFDWa3JI+svv30S3K/SRigAMNHufQ9A9+lDEmD+p/WYBIB+c6E8g3xmQ0M98Ay0Rkk4jc4uAsv7jT9mfx2838GdjSdekoN1K/hdcUZ6yvlnz/lq4jEYkDRgIbm5g9TkS2icg3IjLYWZk49Xtj9c/VbJrfyLJqnbWkj+xeby5zJSYRWQF0b2LWw8aYxc29rIlpDj22s4U5r+TkW+0TjDEHRSQSWC4iabb/4R2SC3gNeIL6dfME9buMbmz8JZp4rd3rsiXrS0QeBmqAD5r5Mu2+vpqK2sS0xt+/03/efl2wSDDwGXCvMeZYo9mbqd/tcNz2ecrnQH9n5OLU742V68wPuAR4sInZVq6zlrB7vblMuRtjJrfhZTlArwaPewIHm3hevohEG2PybH8SFrQlI5w6p4j4ALOA0Sf5GgdttwUisoj6P8HsKquWrj8ReRP4solZLV2X7ZpLRJKAacAkY9vZ2MTXaPf11YSWfP8OWUenIiK+1Bf7B8aYhY3nNyx7Y8zXIjJXRMKNMQ4fIKsF740l68zmQmCzMSa/8Qwr1xkt6yO715u775ZZAswWEX8R6UP9/7w/NfO8JNv9JKC5vwTaw2QgzRiT09RMEQkSkc6/3Kf+Q8WUpp7bXhrt45zZzPJ+BvqLSB/bFs9s6tebI3NdAPwJuMQYc6KZ5zhrfbXk+18CXGc7AmQsUPLLn9eOYvv8Zh6Qaox5oZnndLc9DxE5nfrf6yOOzGVbVkveG6evswaa/QvaqnVm05I+sv/30dGfFrfHP+oLKQeoBPKBpQ3mPUz9p8rpwIUNpr+F7cgaIAxYCWTYbkMdmPVd4LZG03oAX9vux1P/yfc2YCf1uyccvf7eB3YA220/INGNc9keT6X+aIw9TsqVSf1+xa22f69bub6a+v6B2355P6n/U/lV2/wdNDhyy4GZJlL/5/j2ButpaqNcd9rWzTbqP5ge7+hcJ3tvrF5ntuUGUl/WXRtMc/o6o/4/lzyg2tZhc5rro/b+fdThB5RSygO5+24ZpZRSTdByV0opD6TlrpRSHkjLXSmlPJCWu1JKeSAtd6WU8kBa7kop5YH+Pwq1DotEMnRVAAAAAElFTkSuQmCC\n",
      "text/plain": [
       "<Figure size 432x288 with 1 Axes>"
      ]
     },
     "metadata": {
      "needs_background": "light"
     },
     "output_type": "display_data"
    }
   ],
   "source": [
    "#使用 scipy.optimize 模块中的 fmin_bfgs 函数来找到一个给定函数的局部最小值，并将结果绘制在函数曲线图上\n",
    "\n",
    "# 第一个参数是函数名，第二个参数是梯度下降的起点。xopt 返回的是一个包含最小值点的数组\n",
    "xopt = optimize.fmin_bfgs(f, 0)\n",
    "#fmin_bfgs 是一个局部优化方法，因此找到的最小值可能是局部最小值而非全局最小值。选择合适的初始猜测点 x0 可以帮助找到更好的局部最小值。\n",
    "\n",
    "xmin = xopt[0] # 从 xopt 数组中提取最小值点的 x 坐标\n",
    "ymin = f(xmin) # 计算出函数在 xmin 点的值，即函数的最小值\n",
    "print('xmin: ', xmin)\n",
    "print('ymin: ', ymin)\n",
    "\n",
    "# 画出函数曲线\n",
    "plt.plot(x, f(x))\n",
    "# 画出最小值的点, s=20设置点的大小，c='r'设置点的颜色\n",
    "plt.scatter(xmin, ymin, s=20, c='r')\n",
    "\n",
    "#plt.savefig('./opt3-1.png') # 保存要显示的图片\n",
    "plt.show()\n",
    "\n"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "当函数有局部最小值，该算法会因起始点不同，找到这些局部最小而不是全局最小。"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 11,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "Optimization terminated successfully.\n",
      "         Current function value: -17.757257\n",
      "         Iterations: 6\n",
      "         Function evaluations: 14\n",
      "         Gradient evaluations: 7\n",
      "xmin:  -1.4275517833333036\n",
      "ymin:  -17.757256531474148\n"
     ]
    },
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<Figure size 432x288 with 1 Axes>"
      ]
     },
     "metadata": {
      "needs_background": "light"
     },
     "output_type": "display_data"
    }
   ],
   "source": [
    "import numpy as np\n",
    "from scipy import optimize\n",
    "import matplotlib.pyplot as plt\n",
    "\n",
    "# 定义函数\n",
    "def g(x):\n",
    "  return x**2 + 20*np.sin(x)\n",
    "\n",
    "# x取值：-10到10之间，间隔0.1\n",
    "x = np.arange(-10, 10, 0.1)\n",
    "\n",
    "# 画出函数曲线\n",
    "plt.plot(x, g(x))\n",
    "\n",
    "# 第一个参数是函数名，第二个参数是梯度下降的起点。返回值是函数最小值的x值(ndarray数组)\n",
    "# 可以看到5.0附近有个局部最小，把初始值设置为7, 返回的应该是这个局部最小值。\n",
    "xopt = optimize.fmin_bfgs(g, 0)\n",
    "\n",
    "xmin = xopt[0] # x值\n",
    "ymin = g(xmin) # y值，即函数最小值\n",
    "print('xmin: ', xmin)\n",
    "print('ymin: ', ymin)\n",
    "\n",
    "# 画出最小值的点, s=20设置点的大小，c='r'设置点的颜色\n",
    "plt.scatter(xmin, ymin, s=20, c='r')\n",
    "\n",
    "#plt.savefig('./opt5-1.png') # 保存要显示的图片\n",
    "plt.show()\n"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "metadata": {},
   "outputs": [],
   "source": [
    "此时改变初始值，则返回不同初始值处的最小值"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "#### 一定范围的最小值　fminbound"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "要求取一定范围之内的函数最小值，可使用fminbound方法"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 18,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "(-7.068891380019064, 35.82273589215205, 0, 12)\n"
     ]
    }
   ],
   "source": [
    "import numpy as np\n",
    "from scipy import optimize\n",
    "#fminbound 是 scipy.optimize 模块中的一个函数，用于在一维情况下寻找函数的最小值。\n",
    "# 定义函数\n",
    "def g(x):\n",
    "  return x**2 + 20*np.sin(x)\n",
    "\n",
    "# 求取-10到-5之间的函数最小值。full_output=True表示返回详细信息。\n",
    "ret = optimize.fminbound(g, -10, -5, full_output=True)\n",
    "\n",
    "#当 full_output=True 时，fminbound 返回一个包含以下内容：在给定区间内使目标函数最小化的 x 值。在最小值点处的目标函数值\n",
    "#一个整数，表示优化算法的退出状态。0 表示成功，其他值表示失败或收敛问题。一个字符串，包含有关优化过程的详细信息（如收敛情况）\n",
    "#优化过程中目标函数被调用的次数。\n",
    "print(ret)\n"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "### 解方程　fsolve"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "#### 解一元方程"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 12,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "[0.]\n"
     ]
    }
   ],
   "source": [
    "import numpy as np\n",
    "from scipy import optimize\n",
    "\n",
    "# 定义函数\n",
    "def g(x):\n",
    "  return x**2 + 20*np.sin(x)\n",
    "#scipy.optimize.fsolve 函数来找到给定函数的根。fsolve 用于求解非线性方程或方程组的根\n",
    "# optimize.fsolve 用于找到使目标函数 g(x) 的值为零的 x 值，第一个参数是目标函数 g，第二个参数是初始猜测值 2，fsolve 从这个猜测点开始搜索根。\n",
    "ret = optimize.fsolve(g, 2)\n",
    "\n",
    "print(ret)\n"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "#### 解方程组"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "$4x + 9 =0$\n",
    "\n",
    "$3y^{2}-\\sin(yz)=0$\n",
    "\n",
    "$yz-2.5=0$"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 20,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "[-2.25        0.44664383  5.59730104]\n"
     ]
    }
   ],
   "source": [
    "from scipy.optimize import fsolve\n",
    "from math import sin,cos\n",
    "#使用 scipy.optimize.fsolve 函数来解决一个非线性方程组\n",
    "#f(x)：这是一个函数，表示方程组。它接受一个包含三个元素的列表，并返回一个列表，\n",
    "def f(x):\n",
    "    x0 = float(x[0])\n",
    "    x1 = float(x[1])\n",
    "    x2 = float(x[2])\n",
    "    return [\n",
    "        4*x0+ 9,\n",
    "        3*x1*x1 - sin(x1*x2),\n",
    "        x1*x2 - 2.5\n",
    "    ]\n",
    "result = fsolve(f, [1,1,1])#第一个参数是方程组函数 f，第二个参数是初始猜测值 [1, 1, 1]\n",
    "print (result)\n"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "### 函数拟合 curve_fit"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 21,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "\n",
      "求出的系数a, b: \n",
      "[49.62227178  2.60625935]\n",
      "\n",
      "variables_covariance: \n",
      "[[0.46348599 0.08661113]\n",
      " [0.08661113 0.21735976]]\n"
     ]
    },
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<Figure size 432x288 with 1 Axes>"
      ]
     },
     "metadata": {
      "needs_background": "light"
     },
     "output_type": "display_data"
    }
   ],
   "source": [
    "#使用 scipy.optimize.curve_fit 来拟合一组含噪声的数据，并绘制拟合结果\n",
    "import numpy as np\n",
    "from scipy import optimize\n",
    "import matplotlib.pyplot as plt\n",
    "\n",
    "# 定义函数模型，函数模型用于生成数据\n",
    "def g(x, a, b):\n",
    "   return a*np.cos(x) + b\n",
    "\n",
    "# 产生含噪声的样本数据\n",
    "x_data = np.linspace(-5, 5, 100) # 采样点\n",
    "y_data = g(x_data, 50, 2) + 5*np.random.randn(x_data.size) # 加入随机数作为噪声\n",
    "#使用函数 g(x_data, 50, 2) 生成理论数据，其中 a=50 和 b=2。然后在这些数据中加入了噪声\n",
    "#生成了一个与 x_data 数据点数量相同的随机数数组，这些随机数服从标准正态分布。\n",
    "\n",
    "# 使用curve_fit()函数来估计a和b的值\n",
    "variables, variables_covariance = optimize.curve_fit(g, x_data, y_data)\n",
    "#optimize.curve_fit：用于最小化拟合函数与数据之间的误差，找到最佳的参数 a 和 b\n",
    "#第一个参数是模型函数 g。第二个参数是自变量数据 x_data，第三个参数是观测数据 y_data。\n",
    "#ariables：拟合得到的最佳参数 a 和 b，variables_covariance：参数的协方差矩阵，提供了参数估计的精度信息。\n",
    "# 输出结果\n",
    "\n",
    "print('\\n求出的系数a, b: ')\n",
    "print(variables)\n",
    "\n",
    "print('\\nvariables_covariance: ')\n",
    "print(variables_covariance)\n",
    "\n",
    "\n",
    "y = g(x_data, variables[0], variables[1])\n",
    "\n",
    "plt.plot(x_data, y_data, 'o', color=\"green\", label = \"Samples\")\n",
    "plt.plot(x_data, y, color=\"red\", label = \"Fit\")\n",
    "plt.legend(loc = \"best\")#lt.legend(loc=\"best\")：显示图例，位置自动选择最优位置。\n",
    "\n",
    "#plt.savefig('./opt10-1.png') # 保存要显示的图片\n",
    "plt.show()"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "### 最小二乘法"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 22,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "k =  0.4211697393502931 b =  -8.288302606523974\n"
     ]
    },
    {
     "data": {
      "image/png": "iVBORw0KGgoAAAANSUhEUgAAAeoAAAFoCAYAAACYFbjpAAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjUuMSwgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy/YYfK9AAAACXBIWXMAAAsTAAALEwEAmpwYAAA4Q0lEQVR4nO3deXgUVb7/8fdXCIsRFRGjAl7IiCwjmwYXFAVxRSLGlYCKuOCG67jgOm7jqNd1xmUGXFDZnKvmpzhelYu7IiRARJQwaoISwLCjJAESOL8/TqMBOtBJOqlePq/nyZPuqq7ub1mYT59TdU6Zcw4RERGJTbsEXYCIiIhUT0EtIiISwxTUIiIiMUxBLSIiEsMU1CIiIjFMQS0iIhLDGu/sBWbWCXi1yqJ04C6gDZAJbAR+AEY459aE2X4h8CuwCah0zmXUuWoREZEkYTUZR21mjYDFwOFAJ+AD51ylmT0E4Jy7Jcw2C4EM59yKqFQsIiKSRGra9T0A+ME596Nz7n3nXGVo+ZdA2+iWJiIiIjvt+t7GEGBSmOUXsXX3eFUOeN/MHPBP59yYnX3I3nvv7dq3b1/D0kREROLTrFmzVjjnWodbF3FQm1kT4DTg1m2W3w5UAhOq2fQo59wSM9sHmGpmBc65T8K8/0hgJMABBxxAXl5epKWJiIjENTP7sbp1Nen6PgWY7ZwrqfLGw4FBwDBXzclu59yS0O9lQA5wWDWvG+Ocy3DOZbRuHfZLhYiISNKpSVBnU6Xb28xOBm4BTnPOlYXbwMxSzazFlsfAicC82pcrIiKSXCIKajPbFTgBeKPK4qeAFvju7Hwz+0fotfub2Tuh16QBn5nZV8BM4N/OuXejVr2IiEiCi+gcdajF3GqbZQdW89olwMDQ40KgRx1rBKCiooLi4mLWr18fjbdLCs2aNaNt27akpKQEXYqIiNRSTa/6DkxxcTEtWrSgffv2mFnQ5cQ85xwrV66kuLiYDh06BF2OiIjUUtxMIbp+/XpatWqlkI6QmdGqVSv1QIiIxLm4CWpAIV1D+u8lIhL/4iqog/aXv/yFP/7xj3Tv3p2ePXsyY8aMevusfv36aSy5iIjEzznqmiqrKCNnfg5Fa4pIb5lOVucsmqc0r/X7TZ8+nbfffpvZs2fTtGlTVqxYwcaNG6NYsYiIyPYSskWduziX9CfTOS/nPO788E6GvTGMDk92IHdxbq3fc+nSpey99940bdoUgL333pv999+fe++9l969e3PwwQczcuRItsz70q9fP66//nqOOeYYunTpQm5uLmeccQYdO3bkjjvuAGDhwoV07tyZ4cOH0717d8466yzKyrYfkv7+++9z5JFHcsghh3D22Wezbt06AEaPHk3Xrl3p3r07N954Y633TUREYlfCBXV5RTmZkzIpKS3ZanlJaQmZkzIpryiv1fueeOKJLFq0iIMOOogrr7ySjz/+GIBRo0aRm5vLvHnzKC8v5+233/5tmyZNmvDJJ59w+eWXM3jwYJ5++mnmzZvHuHHjWLlyJQALFixg5MiRzJ07l913351nnnlmq89dsWIF999/P//3f//H7NmzycjI4LHHHmPVqlXk5OTwzTffMHfu3N/CX0REEkvCBXVOQc52Ib1FSWkJOQU5tXrf3XbbjVmzZjFmzBhat27Nueeey7hx4/jwww85/PDD6datGx988AHffPPNb9ucdtppAHTr1o0//vGP7LfffjRt2pT09HQWLVoEQLt27TjqqKMAOO+88/jss8+2+twvv/ySb7/9lqOOOoqePXvy0ksv8eOPP7L77rvTrFkzLrnkEt544w123XXXWu2XiIjUwC+/wAUXwDZ/q+tTwp2jLlxdWKf1O9KoUSP69etHv3796NatG//85z+ZO3cueXl5tGvXjrvvvnur4VBbusl32WWX3x5veV5Z6e8Quu2V2ds+d85xwgknMGnS9jctmzlzJtOmTWPy5Mk89dRTfPDBB7XeNxER2YncXMjOhh9+gLw8mDcPdqn/9m7CtajTW6bXaX11FixYwHfffffb8/z8fDp16gT489Xr1q3jtddeq/H7/vTTT0yfPh2ASZMmcfTRR2+1/ogjjuDzzz/n+++/B6CsrIz//Oc/rFu3jrVr1zJw4ECeeOIJ8vPza7VfIiKyE5s3wyOPQJ8+PqR79IA33miQkIYEbFFndc4iLTUtbPd3WmoaWZ2zavW+69at4+qrr2bNmjU0btyYAw88kDFjxrDnnnvSrVs32rdvT+/evWv8vl26dOGll17isssuo2PHjlxxxRVbrW/dujXjxo0jOzubDRs2AHD//ffTokULBg8ezPr163HO8fjjj9dqv0REZAdKSuDCC+Hd0G0qrrkGHnoImjVrsBKsmrtTBiojI8NtO4Z4/vz5dOnSJaLt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\n",
      "text/plain": [
       "<Figure size 576x432 with 1 Axes>"
      ]
     },
     "metadata": {
      "needs_background": "light"
     },
     "output_type": "display_data"
    }
   ],
   "source": [
    "#使用最小二乘法拟合一个线性模型，并将结果可视化。具体来说，它通过最小化直线与数据点之间的残差平方和来确定最佳的直线拟合\n",
    "\n",
    "\n",
    "# 样本数据，自变量与因变量\n",
    "X = np.array([160,165,158,172,159,176,160,162,171])\n",
    "Y = np.array([58,63,57,65,62,66,58,59,62])\n",
    "\n",
    "# 偏差函数\n",
    "def residuals(p):#算模型预测值与实际数据之间的误差\n",
    "        k, b = p  #p 是包含两个参数的列表 [k, b]，分别代表直线的斜率和截距。\n",
    "        return Y-(k*X+b)#函数返回每个数据点的残差，\n",
    "\n",
    "# 使用最小二乘法拟合直线\n",
    "#最小化 residuals 函数的平方和，寻找最佳参数 [k, b]。偏差函数 residuals，参数的初始值 [1, 10]\n",
    "ret = optimize.leastsq(residuals, [1, 10])#最小化残差平方和 (Least Squares)\n",
    "k, b = ret[0]#最优的参数估计值\n",
    "print(\"k = \", k, \"b = \", b)\n",
    "\n",
    "#画样本点\n",
    "plt.figure(figsize=(8, 6)) ##指定图像比例： 8：6\n",
    "plt.scatter(X, Y, color=\"green\", label=\"Samples\", linewidth=2)\n",
    "\n",
    "#画拟合直线\n",
    "x = np.linspace(150, 190, 100) ##在150-190直接画100个连续点\n",
    "y = k*x + b ##函数式\n",
    "plt.plot(x,y,color=\"red\", label=\"Fit\",linewidth=2)\n",
    "plt.legend() #绘制图例\n",
    "plt.savefig('./opt11-1.png') # 保存要显示的图片\n",
    "plt.show()\n"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "## 统计"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "### 概率密度分布"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "应导入scipy.stats 包进行统计分析。"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 2,
   "metadata": {
    "ExecuteTime": {
     "end_time": "2022-10-05T09:06:26.318354Z",
     "start_time": "2022-10-05T09:06:22.789796Z"
    }
   },
   "outputs": [],
   "source": [
    "import scipy.stats as st"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "以正态分布为例了解scipy.stats的基本使用方法。\n",
    "\n",
    " - 1.生成服从指定分布的随机数 norm.rvs\n",
    "\n",
    "norm.rvs通过loc和scale参数可以指定正态分布的期望和标准差。size得到随机数数组的形状参数。\n",
    "生成的是np.array形式的数组。"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 23,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "array([-0.08460513, -0.0017238 , -0.19530826, -0.06427721,  0.00382108,\n",
       "        0.00422395,  0.04252543, -0.06031181,  0.15933014, -0.04108928])"
      ]
     },
     "execution_count": 23,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "#生成符合正态分布（高斯分布）的随机样本\n",
    "import scipy.stats as st\n",
    "st.norm.rvs(loc = 0,scale = 0.1,size =10)#分布的均值，分布的标准差，生成的随机样本的数量"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 25,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "array([[-0.2073763 , -0.30120929],\n",
       "       [ 0.01057805, -0.03601567]])"
      ]
     },
     "execution_count": 25,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "st.norm.rvs(loc = 0,scale = 0.1,size =(2,2))#生成样本的形状。这里设置为 (2, 2)，意味着生成一个 2x2 的数组，每个元素都符合给定的正态分布。"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "- stats.norm.pdf 正态分布概率密度函数\n",
    "\n",
    "- stats.norm.cdf 正态分布累计概率密度函数"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 26,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "0.3989422804014327"
      ]
     },
     "execution_count": 26,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "st.norm.pdf(0,loc = 0,scale = 1)#计算标准正态分布（均值为 0，标准差为 1）在点 𝑥=0 处的概率密度。"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 30,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "0.0013498980316300933"
      ]
     },
     "execution_count": 30,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "st.norm.cdf(0,loc=3,scale=1)#计算在均值为 3 和标准差为 1 的正态分布中，随机变量小于或等于 0 的概率。"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 31,
   "metadata": {
    "ExecuteTime": {
     "end_time": "2022-10-05T09:09:11.353732Z",
     "start_time": "2022-10-05T09:09:11.172562Z"
    }
   },
   "outputs": [
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "D:\\1.Notepad\\anaconda3\\anaconda\\lib\\site-packages\\IPython\\core\\pylabtools.py:151: UserWarning: Glyph 65306 (\\N{FULLWIDTH COLON}) missing from current font.\n",
      "  fig.canvas.print_figure(bytes_io, **kw)\n"
     ]
    },
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<Figure size 432x288 with 1 Axes>"
      ]
     },
     "metadata": {
      "needs_background": "light"
     },
     "output_type": "display_data"
    }
   ],
   "source": [
    "import scipy.stats as st\n",
    "import matplotlib.pyplot as plt\n",
    "import numpy as np\n",
    "\n",
    "# 生成对一组符合正态分布的数据\n",
    "\n",
    "#第1步：定义随机变量：\n",
    "mu=0 #平均值\n",
    "sigma=1 #标准差\n",
    "X=np.arange(-5,5,0.1)\n",
    "\n",
    "#第2步：概率密度函数（PDF）\n",
    "y=st.norm.pdf(X,mu,sigma)#连续分布用pdf,离散分布用pmf\n",
    "#y=st.norm.cdf(X,mu,sigma)\n",
    "\n",
    "#第3步：绘图\n",
    "plt.plot(X,y)\n",
    "plt.xticks(np.arange(-5, 5, 1))#plt.xticks()：这个函数用于设置 x 轴的刻度位置和标签。\n",
    "\n",
    "#x轴文本\n",
    "plt.xlabel('variable：x')\n",
    "#y轴文本\n",
    "plt.ylabel('probability')\n",
    "#标题\n",
    "plt.title('Normal Distribution:  $\\mu$=%.1f,$\\sigma^2$=%.1f'%(mu,sigma))\n",
    "#网格\n",
    "plt.grid()\n",
    "#显示图形\n",
    "plt.show()"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "t 分布与正态分布用法类似，但需要一个额外参数 df"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 32,
   "metadata": {
    "ExecuteTime": {
     "end_time": "2022-10-05T09:11:29.142733Z",
     "start_time": "2022-10-05T09:11:28.973076Z"
    }
   },
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "比较t-分布与标准正态分布\n"
     ]
    },
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<Figure size 432x288 with 1 Axes>"
      ]
     },
     "metadata": {
      "needs_background": "light"
     },
     "output_type": "display_data"
    }
   ],
   "source": [
    "# 用于比较 t-分布和标准正态分布，并将结果可视化。\n",
    "import numpy as np\n",
    "import matplotlib.pyplot as plt\n",
    "\n",
    "print('比较t-分布与标准正态分布')\n",
    "x = np.linspace( -3, 3, 100)#生成从 -3 到 3 的 100 个等间隔的数据点。\n",
    "#st.t.pdf(x, df) 计算给定 x 值在 df 自由度下的 t-分布的概率密度函数\n",
    "plt.plot(x, st.t.pdf(x,1), label='df=1')\n",
    "plt.plot(x, st.t.pdf(x,5), label='df=5')\n",
    "plt.plot(x, st.t.pdf(x,100), label = 'df=100')\n",
    "#st.norm.pdf(x) 计算给定 x 值在标准正态分布（均值为 0，标准差为 1）下的概率密度函数\n",
    "#'kx' 用于将正态分布的点标记为黑色十字（'x'）。\n",
    "#[::5]：这是一个切片操作，第一个冒号 : 表示从数组的开头开始。第二个冒号 : 表示到数组的末尾结束，5 是步长，表示每隔 5 个元素取一个\n",
    "plt.plot( x[::5], st.norm.pdf(x[::5]),'kx', label='normal') # 这里正态分布取默认 \\mu=0 和 \\sigma=1 \n",
    "plt.legend()\n",
    "plt.show()"
   ]
  },
  {
   "attachments": {
    "image.png": {
     "image/png": "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"
    }
   },
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "### 统计部分附录\n",
    "\n",
    "![image.png](attachment:image.png)"
   ]
  },
  {
   "attachments": {
    "image.png": {
     "image/png": "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"
    }
   },
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "![image.png](attachment:image.png)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "metadata": {},
   "outputs": [],
   "source": []
  }
 ],
 "metadata": {
  "kernelspec": {
   "display_name": "Python 3 (ipykernel)",
   "language": "python",
   "name": "python3"
  },
  "language_info": {
   "codemirror_mode": {
    "name": "ipython",
    "version": 3
   },
   "file_extension": ".py",
   "mimetype": "text/x-python",
   "name": "python",
   "nbconvert_exporter": "python",
   "pygments_lexer": "ipython3",
   "version": "3.9.12"
  },
  "toc": {
   "base_numbering": 1,
   "nav_menu": {},
   "number_sections": true,
   "sideBar": true,
   "skip_h1_title": false,
   "title_cell": "Table of Contents",
   "title_sidebar": "Contents",
   "toc_cell": false,
   "toc_position": {},
   "toc_section_display": true,
   "toc_window_display": true
  },
  "varInspector": {
   "cols": {
    "lenName": 16,
    "lenType": 16,
    "lenVar": 40
   },
   "kernels_config": {
    "python": {
     "delete_cmd_postfix": "",
     "delete_cmd_prefix": "del ",
     "library": "var_list.py",
     "varRefreshCmd": "print(var_dic_list())"
    },
    "r": {
     "delete_cmd_postfix": ") ",
     "delete_cmd_prefix": "rm(",
     "library": "var_list.r",
     "varRefreshCmd": "cat(var_dic_list()) "
    }
   },
   "types_to_exclude": [
    "module",
    "function",
    "builtin_function_or_method",
    "instance",
    "_Feature"
   ],
   "window_display": false
  }
 },
 "nbformat": 4,
 "nbformat_minor": 4
}
